
$sc-margin-range: (5px, 10px, 15px, 20px, 30px, 40px, 50px, 60px, 80px, 100px);
$sc-padding-range: (5px, 10px, 15px, 20px, 30px, 40px, 50px, 60px, 80px, 100px);
$sc-spacing-range: (5px, 10px, 15px, 20px, 30px, 40px, 50px, 60px, 80px, 100px);

@mixin make-margin-size($sizes...) {
    @if length($sizes) < 1 {
        $sizes: $sc-margin-range;
    }
    @for $i from 1 through length($sizes) {
        $item: nth($sizes, $i);
        
        .mt-#{strip-units($item)} {
            margin-top: $item;
        }
        
        .mr-#{strip-units($item)} {
            margin-right: $item;
        }
        
        .mb-#{strip-units($item)} {
            margin-bottom: $item;
        }
        
        .ml-#{strip-units($item)} {
            margin-left: $item;
        }
    }
}

@mixin make-padding-size($sizes...) {
    @if length($sizes) < 1 {
        $sizes: $sc-padding-range;
    }
    @for $i from 1 through length($sizes) {
        $item: nth($sizes, $i);
        
        .pt-#{strip-units($item)} {
            padding-top: $item;
        }
        
        .pr-#{strip-units($item)} {
            padding-right: $item;
        }
        
        .pb-#{strip-units($item)} {
            padding-bottom: $item;
        }
        
        .pl-#{strip-units($item)} {
            padding-left: $item;
        }
    }
}

@mixin make-spacingbar($sizes...) {
    @if length($sizes) < 1 {
        $sizes: $sc-spacing-range;
    }
    
    $lists: ();
    @for $i from 1 through length($sizes) {
        $item: nth($sizes, $i);
        $lists: append($lists, ".g-spacingbar#{strip-units($item)}", comma);
        
        .g-spacingbar#{strip-units($item)} {
            height: $item;
        }
    }
    
    #{$lists} {
        overflow: hidden;
        clear: both;
        width: 100%;
        line-height: 0;
        font-size: 0;
        text-indent: -9999px;
    }
}

@include make-margin-size;
@include make-padding-size;
@include make-spacingbar;

.gm-tbl {
    @include fn-tbl;
}
.gm-tbl-cell {
    @include fn-tblcell;
}